In virtualization environments, a hypervisor may map various hardware on a host machine to a virtual machine. Unlike other hardware resources, such as multi-core processors and disk storage which can be partitioned, graphics hardware such as a graphics processing unit (GPU) may not be easily allocated to multiple virtual machine. In a multi-virtual-machine environment, the hypervisor may allow only one virtual machine or guest operating system (OS) to access a GPU at a time, in order to support hardware acceleration or to avoid conflicts in processing concurrent graphical instructions from multiple sources (i.e., virtual machines). Moreover, re-assignment of a GPU between virtual machines may impair user experience, such as where a guest OS may generate an alert or error in response to the loss of the GPU by the guest OS.